package org.example.api.pojo;

import org.example.api.model.RechargeRecord;
import org.example.api.model.User;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @description: TODO
 * @author: uu
 * @data: 2023/7/20 下午 03:46
 * @version: v1.0
 */
public class UserCenterInfo extends User implements Serializable {
    // 剩余投资
    private BigDecimal availableMoney;
    // 最近投资
    private List<UserBidInfo> bidInfos;
    // 最近充值
    private List<RechargeRecord> rechargeRecords;
    // 最近收益
    private List<IncomeInfo> incomeInfos;

    public UserCenterInfo() {
    }

    public List<IncomeInfo> getIncomeInfos() {
        return incomeInfos;
    }

    public void setIncomeInfos(List<IncomeInfo> incomeInfos) {
        this.incomeInfos = incomeInfos;
    }

    @Override
    public String toString() {
        return "UserCenterInfo{" +
                "id=" + this.getId()+
                ", phone='" + this.getPhone()+ '\'' +
                ", loginPassword='" + this.getLoginPassword() + '\'' +
                ", name='" + this.getName() + '\'' +
                ", idCard='" + this.getIdCard() + '\'' +
                ", addTime=" + this.getAddTime() +
                ", lastLoginTime=" + this.getLastLoginTime() +
                ", headerImage='" + this.getHeaderImage() + '\'' +
                "availableMoney=" + availableMoney +
                ", bidInfos=" + bidInfos +
                ", rechargeRecords=" + rechargeRecords +
                ", incomeInfos=" + incomeInfos +
                '}';
    }

    public UserCenterInfo(BigDecimal availableMoney) {
        this.availableMoney = availableMoney;
    }

    public UserCenterInfo(List<UserBidInfo> bidInfos, List<RechargeRecord> rechargeRecords) {
        this.bidInfos = bidInfos;
        this.rechargeRecords = rechargeRecords;
    }

    public UserCenterInfo(BigDecimal availableMoney, List<UserBidInfo> bidInfos, List<RechargeRecord> rechargeRecords) {
        this.availableMoney = availableMoney;
        this.bidInfos = bidInfos;
        this.rechargeRecords = rechargeRecords;
    }

    public List<UserBidInfo> getBidInfos() {
        return bidInfos;
    }

    public void setBidInfos(List<UserBidInfo> bidInfos) {
        this.bidInfos = bidInfos;
    }

    public List<RechargeRecord> getRechargeRecords() {
        return rechargeRecords;
    }

    public void setRechargeRecords(List<RechargeRecord> rechargeRecords) {
        this.rechargeRecords = rechargeRecords;
    }

    public BigDecimal getAvailableMoney() {
        return availableMoney;
    }

    public void setAvailableMoney(BigDecimal availableMoney) {
        this.availableMoney = availableMoney;
    }
}
